From: Ryan Tandy Date: Sat, 6 May 2017 22:50:13 +0000 (+0000) Subject: ITS#8650 retry gnutls_handshake after GNUTLS_E_AGAIN X-Git-Tag: archive/raspbian/2.4.46+dfsg-5+rpi1^2^2~1 X-Git-Url: https://dgit.raspbian.org/%22http:/www.example.com/%22mailto:kde%40ewsoftware.de/%22style.css/%22node%24level1.%24level2.html//%22mailto:info%40bibletime.de%22/%22http:/www.example.com/%22mailto:kde%40ewsoftware.de/%22style.css/%22node%24level1.%24level2.html/%22mailto:info%40bibletime.de%22?a=commitdiff_plain;h=7acc1b32b757e26189e4319cc9421002855769b6;p=openldap.git ITS#8650 retry gnutls_handshake after GNUTLS_E_AGAIN Gbp-Pq: Name ITS8650-retry-gnutls_handshake-after-GNUTLS_E_AGAIN.patch --- diff --git a/libraries/libldap/tls_g.c b/libraries/libldap/tls_g.c index 2fe2777d..c9d18f52 100644 --- a/libraries/libldap/tls_g.c +++ b/libraries/libldap/tls_g.c @@ -358,7 +358,9 @@ tlsg_session_accept( tls_session *session ) tlsg_session *s = (tlsg_session *)session; int rc; - rc = gnutls_handshake( s->session ); + for ( rc = gnutls_handshake ( s->session ); + rc == GNUTLS_E_INTERRUPTED || rc == GNUTLS_E_AGAIN; + rc = gnutls_handshake ( s->session ) ); if ( rc == 0 && s->ctx->reqcert != LDAP_OPT_X_TLS_NEVER ) { const gnutls_datum_t *peer_cert_list; unsigned int list_size;